var Utils = require('Utils.js')

Utils.init()

launch('com.eg.android.AlipayGphone')

var flag = flag_one = true

var _toast_ = toast
toast = message => {
    _toast_(message)
    log(message)
    sleep(1000)
}

while (flag) {
    sleep(random(2000, 3000))
    if (text('种树').findOnce() || text('最新动态').findOnce() || Utils.findPictureTap('找能量', 0.7) || Utils.findPictureTap('找能量2', 0.7)) {
        toast('我的蚂蚁森林界面：成功')
        getPowerAndNext()
        while (flag_one) {
            if (text('展开好友动态').findOnce() || text('TA收取你').findOnce() || text('你收取TA').findOnce())
                getPowerAndNext()
            else if (text('返回我的森林').findOnce())
                desc('关闭').findOne(500).click(), flag = flag_one = false, toast('能量收完啦')
        }
    } else {
        if (text('扫一扫').findOnce() || text('出行').findOnce()) {
            toast('首页：成功')
            let 蚂蚁森林_ui = text('蚂蚁森林').findOnce()
            if (蚂蚁森林_ui) {
                if (蚂蚁森林_ui.parent().click() || 蚂蚁森林_ui.parent().parent().click() || 蚂蚁森林_ui.parent().parent().parent().click()) {
                    toast('点击蚂蚁森林：成功')
                }
            }
        }
    }
}

/**
 * @description 收取能量后转到下一位
 */
function getPowerAndNext() {
    getPower() ? toast('能量已收完') : toast('此好友没有能量')
    Utils.findPictureTap('找能量', 0.7) || Utils.findPictureTap('找能量2', 0.7)
    Utils.sleeps()
}

/**
 * @description 收取能量
 */
function getPower() {
    const region = [30, 300, 620, 250]
    let power_arr = Utils.getWordsAllPosition('可收', 'high', region) || Utils.getWordsAllPosition('可收', region)
    let flag = false
    if (power_arr.length > 0) {
        flag = true
        for (let item of power_arr) {
            let x = item.x + 30
            let y = item.y - random(20, 30) + 300
            click(x, y)
            log(x, y)
            sleep(500)
        }
    }
    return flag
}
